home *** CD-ROM | disk | FTP | other *** search
/ Games of Daze / Infomagic - Games of Daze (Summer 1995) (Disc 1 of 2).iso / x2ftp / msdos / iguana / incosrc / incosrc.exe / UTIL / BIN2DB.PAS next >
Pascal/Delphi Source File  |  1993-11-07  |  1KB  |  59 lines

  1.  
  2. CONST
  3.    DataType: STRING = 'DB';
  4.    DataLen          = 1;
  5.  
  6. VAR
  7.    fo : TEXT;
  8.    fi : FILE;
  9.  
  10.    nfi: STRING;
  11.    i, j, k  : INTEGER;
  12.  
  13.  
  14.  
  15. CONST
  16.    bc : INTEGER = 0;
  17. PROCEDURE DoNum(b: WORD);
  18.  
  19. BEGIN
  20.    IF bc = 0 THEN BEGIN
  21.       WriteLn(fo);
  22.       Write(fo, ' ',DataType, ' ', b: DataLen);
  23.    END ELSE
  24.       Write(fo, ',', b : DataLen);
  25.    bc := (bc + 1) MOD 20;
  26. END;
  27.  
  28.  
  29.  
  30.  
  31. VAR
  32.    buf : ARRAY [1..1024] OF BYTE;
  33.    rez : INTEGER;
  34.  
  35. BEGIN
  36.    IF ParamCount <> 2 THEN BEGIN
  37.       WriteLn('Binary file to ASM/TP BASM source converter bye Iguana.');
  38.       WriteLn('   Usage: BIN2DB <infile> <outfile>');
  39.       HALT
  40.    END;
  41.    nfi := ParamStr(1);
  42.    Assign(fo, ParamStr(2));
  43.    ReWrite(fo);
  44.    WriteLn(fo, '; (*----- File created with BIN2DB from file ', nfi, '. -----*)');
  45.  
  46.    Assign(fi, nfi);
  47.    Reset(fi,1);
  48.    REPEAT
  49.       BlockRead(fi, buf, Sizeof(buf), rez);
  50.       IF rez <> 0 THEN FOR i := 1 TO rez DO
  51.          DoNum(buf[i]);
  52.    UNTIL rez = 0;
  53.    Close(fi);
  54.    WriteLn(fo);
  55.    Close(fo)
  56. END.
  57.  
  58.  
  59.